The inventive concepts described herein relate to storage (memory) controllers and to methods of operating storage controllers.
In inputting and outputting data to/from a storage device, a pre-fetch procedure may be performed in order to reduce an input/output (I/O) time and to improve an I/O performance. For example, when addressed data is accessed from a storage device during an I/O operation, data in the storage device that is adjacent to the addressed data may be pre-fetched and loaded in a memory device (such as a buffer memory). This is done in anticipation of the pre-fetched data being accessed in a subsequent I/O operation due to its close proximity in the storage device to the addressed data. If indeed the pre-fetched data is accessed in a subsequent I/O operation, it can be read relatively quickly since it accessible from the buffer memory without being retrieved from the storage device.